import os
import shutil

# 定义源目录和目标目录
source_dir = r'C:\Users\99onez_08\code\python\RagFlaskServer'
target_dir = os.path.join(source_dir, 'code_py')

try:
    # 创建目标目录（如果不存在）
    if not os.path.exists(target_dir):
        os.makedirs(target_dir)
        print(f"成功创建目标目录：{target_dir}")
    else:
        print("目标目录已存在，跳过创建")

    # 遍历所有子目录及文件（递归）
    for root, _, files in os.walk(source_dir):
        for filename in files:
            if filename.endswith('.py'):
                src_file = os.path.join(root, filename)
                dst_file = os.path.join(target_dir, filename)
                
                # 复制文件（如果需要移动，替换为 shutil.move）
                try:
                    shutil.copy(src_file, dst_file)
                    print(f"✅ 复制成功：{src_file} → {dst_file}")
                except Exception as e:
                    print(f"❌ 复制 {src_file} 时出错：{str(e)}")
                
except Exception as e:
    print(f"❌ 发生严重错误：{str(e)}")